package com.dhcc.core.modules.system.dao;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;
import com.dhcc.core.framework.base.mapper.BaseMapper;
import com.dhcc.core.framework.result.node.ZTreeNode;
import com.baomidou.mybatisplus.plugins.Page;
import com.dhcc.core.modules.system.entity.Shortcut;

/**
 * 快捷方式表
 * 
 * @ClassName: ShortcutMapper
 * @Description: TODO
 * @author lf
 * @date 2018-09-26 17:24:23
 */
public interface ShortcutMapper  extends BaseMapper<Shortcut> {
	
    List<Shortcut> list(@Param("page") Page<Shortcut> page,@Param("map")Map<String, Object> map);

    List<Shortcut> list(@Param("map")Map<String, Object> map);
    
    /**
     * 根据条件查询菜单
     * @return
     */
    List<Long> getResourceIdsByPrincipalIds(List<Long> principalIds);

    /**
     * 获取菜单列表树
     * @return
     */
    List<ZTreeNode> resourceTreeListByResourceIds(@Param("resGroup") Integer resGroup,
            @Param("resourceIds") List<Long> resourceIds,
            @Param("createBy")Long createBy);
    
    /**
     * 删除快捷方式
     * @return
     */
	void deleteByUserID(Long createBy);
	
	/**
     * 通过id获取resource的url地址
     * @return
     */
	String selectUrlById(Long id);

	
	/**
     * 通过userid获取目标用户的角色id
     * @return
     */
	List<String> selectRoleIdsByUserId(Long createBy);
	
	/**
     * 通过userid获取目标用户的部门的id
     * @return
     */
	List<Long> selectDeptIdsByUserId(Long createBy);
}
